package com.yx.cloud.bean.tuya;

public class RequestStartSweep {

    /**
     * mode : reAppointClean
     * pathType : y_word
     * cleanMode : sweepOnly
     */
    public static String MODE_SMART_CLEAN="smartClean";
    public static String MODE_APPOINT_CLEAN="appointClean";
    public static String MODE_REAPPOINT_CLEAN="reAppointClean";
    public static String MODE_SMARTAREA_CLEAN="smartAreaClean";
    public static String MODE_DEPTHTOTAL_CLEAN="depthTotalClean";


    private String mode;
    private String pathType;
    private String cleanMode;

    private RequestStartSweep(Builder builder) {
        setMode(builder.mode);
        setPathType(builder.pathType);
        setCleanMode(builder.cleanMode);
    }

    public static Builder newBuilder() {
        return new Builder();
    }

    public String getMode() {
        return mode;
    }

    public void setMode(String mode) {
        this.mode = mode;
    }

    public String getPathType() {
        return pathType;
    }

    public void setPathType(String pathType) {
        this.pathType = pathType;
    }

    public String getCleanMode() {
        return cleanMode;
    }

    public void setCleanMode(String cleanMode) {
        this.cleanMode = cleanMode;
    }

    @Override
    public String toString() {
        return "{" +
                "\"mode\":\'" + mode + "\'" +
                ", \"pathType\":\'" + pathType + "\'" +
                ", \"cleanMode\":\'" + cleanMode + "\'" +
                '}';
    }


    public static final class Builder {
        private String mode;
        private String pathType;
        private String cleanMode;

        private Builder() {
        }

        public Builder setMode(String mode) {
            this.mode = mode;
            return this;
        }

        public Builder setPathType(String pathType) {
            this.pathType = pathType;
            return this;
        }

        public Builder setCleanMode(String cleanMode) {
            this.cleanMode = cleanMode;
            return this;
        }

        public RequestStartSweep build() {
            return new RequestStartSweep(this);
        }
    }
}
